1. Field of the Invention
The present invention relates to a 3-dimensional animation generating apparatus, having good interactivity, to be used in computergraphics (hereinafter abbreviated as CG) and in various image processing fields for processing scenes which are generated by a computer so as to generate continuous animation substantially in real time. The present invention also relates to a 3-dimensional animation generating method using such apparatus.
2. Description of the Related Art
In order to obtain animation of high image quality, it is necessary to improve the quality of image per frame (e.g., the spatial frequency, and the number of gray-scale levels). Also, it is necessary to increase the resolution along a time axis, i.e., the number of frames per unit time. Thirty frames or more per second are required for realizing animation with an image quality equivalent to that of the current NTSC-standard TV.
In a conventional method for generating CG animation, it takes a considerably long time to generate an image for each frame (hereinafter referred to as the frame image). Then, respective frame images thus generated are sequentially recorded on a video film, thereby obtaining animation. In such a conventional method, it is difficult to generate animation in real time. However, the conventional method is useful in a conventional CG application which requires animation with a high image quality.
On the other hand, in the image processing field, animation is often generated by a method called key-frame interpolation. In this method, some reference frames (hereinafter referred to as key frames) along the time axis are selected, and frame images between respective key frames are interpolated by utilizing the similarities between the frame images in the key frames. More specifically, the interpolation is performed by detecting or estimating a motion vector originating from the key frame for each of pixels which constitute an object existing in a frame.
However, in the above-described conventional method in which frame images are sequentially recorded on a video film, images of several hundreds of frames are required even for generating animation for several tens of seconds. Accordingly, several hours are required for generating one continuous scene, and consequently, the generation efficiency is very poor. In addition, during the generation process, it is impossible to review the outline of animation which is being generated and to partially change the animation which is being generated. Thus, the practicability and the interactivity are very low.
Moreover, in the key-frame interpolation, errors, such as an estimation error of a motion vector, may inevitably occur, so that it is difficult to realize smooth motion.
On the other hand, there is a different trend for generating 3-dimensional animation in amusement applications and in hobby applications for home use. In these applications, unlike the above-described CG applications requiring a high image quality, relatively low image quality can be allowed, but the interactivity with a user and the real time response to the instruction given by the user are strongly required.
In these applications, a different approach for generating a 3-dimensional animation is taken, for realizing the above purpose, compared with the usual CG application. For example, in usual CG images, an object existing in one scene is represented by using several thousands of polygons for which the processing is performed. In the amusement and hobby applications, on the other hand, the number of polygons to be processed is largely decreased and the object is approximated using 2-dimensional data. As a result, the required calculation amount is reduced, so that real time processing can be realized.
However, in such a method, the quality of generated images is necessarily deteriorated. Although the thus generated image is said to be "3-dimensional", it is actually a pseudo 3-dimensional image which is projected on a 2-dimensional plane. It should precisely be called a 2.5-dimensional image.